package com.tnxst.phexamination.dto;

import androidx.annotation.NonNull;
import androidx.room.ColumnInfo;
import androidx.room.Entity;
import androidx.room.PrimaryKey;

import java.io.Serializable;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

@Data
@NoArgsConstructor
@AllArgsConstructor
@Entity
public class HypertensionFollowDTO implements Serializable {
    
    /**
     * 高血压随访ID<必填>
     */
    @PrimaryKey
    @NonNull
    private String ID;
    
    /**
     *  居民id<必填>
     */
    @ColumnInfo
    private String PersonID;
    
    /**
     *  下次随访日期<必填>
     */
    @ColumnInfo
    private String NextFollowUpDate;
    
    /**
     *  随访方式(1 门诊 2 家庭 4 电话 8其他)<必填>
     */
    @ColumnInfo
    private String WayUp;
    
    /**
     *  症状(1 无症状(选1就不能选择其它选项) 2 头痛头晕 4 恶心呕吐 8 眼花耳鸣 16 呼吸困难 32 心悸胸闷 64 鼻衄 128 四肢发麻 256 下肢水肿 131072 其他（内容放otherjson里）)<必填>
     */
    @ColumnInfo
    private String Symptom;
    
    /**
     *  体征其他
     */
    @ColumnInfo
    private String ExamBodyOther;
    
    /**
     *  下次目标体重float
     */
    @ColumnInfo
    private String NextWeight;
    
    /**
     *  下次目标心率varchar
     */
    @ColumnInfo
    private String NextHeartRate;
    
    /**
     *  下次目标日吸烟量varchar
     */
    @ColumnInfo
    private String NextSmoking;
    
    /**
     *  下次目标日饮酒量varchar
     */
    @ColumnInfo
    private String NextDailyAlcohol;
    
    /**
     *  摄盐情况 咸淡（1 轻 2 中 4重)，默认为0
     */
    @ColumnInfo
    private String SaltIntake;
    
    /**
     *  下次摄盐情况（咸淡）1 轻 2 中 4 重，默认为0
     */
    @ColumnInfo
    private String NextSaltIntake;
    
    /**
     *  下次锻炼每周次数varchar
     */
    @ColumnInfo
    private String NextExerciseWeekTimes;
    
    /**
     *  下次锻炼周次分钟varchar
     */
    @ColumnInfo
    private String NextExerciseWeekMinute;
    
    /**
     *  心里调整number：1 良好 2 一般 4 差
     */
    @ColumnInfo
    private String PsychologicalAdjustment;
    
    /**
     *  遵医行为number：1 良好 2 一般 4 差
     */
    @ColumnInfo
    private String ComplianceBehavior;
    
    /**
     *  服药依从性number：1 规律 2 间断 4 不服药
     */
    @ColumnInfo
    private String MedicationCompliance;
    
    /**
     *  药物不良反应varchar “1”无 “2”有（内容放otherjson里面）
     */
    @ColumnInfo
    private String AdverseDrugReactions;
    
    /**
     *  此次随访分类Integer：1 控制满意 2 控制不满意 4 不良反应 8 并发症
     */
    @ColumnInfo
    private String FuClassification;
    
    /**
     *  随访结局
     */
    @ColumnInfo
    private String FollowUpRemarks;
    
    /**
     *  随访日期
     */
    @ColumnInfo
    private String FollowUpDate;
    
    /**
     *  随访医生
     */
    @ColumnInfo
    private String DoctorName;
    
    /**
     *  操作用户id
     */
    @ColumnInfo
    private String UserID;
    
    /**
     *  责任医生id
     */
    @ColumnInfo
    private String DoctorID;

    /**
     *  健康指导
     */
    @ColumnInfo
    private String HealthGuidance;
    
    /**
     *  心率Integer(10-200)
     */
    @ColumnInfo
    private String HeartRate;
    
    /**
     *  右侧收缩压float(50-300)
     */
    @ColumnInfo
    private String RightSbp;
    
    /**
     *  右侧舒张压float(20-300)
     */
    @ColumnInfo
    private String RightDbp;
    
    /**
     *  身高float(10-300)
     */
    @ColumnInfo
    private String Height;
    
    /**
     *  体重float(1-300)
     */
    @ColumnInfo
    private String Weight;
    
    /**
     *  体质指数float
     */
    @ColumnInfo
    private String Bmi;
    
    /**
     *  每次锻炼时间Integer
     */
    @ColumnInfo
    private String EachExerciseTime;
    
    /**
     *  每周锻炼次数Integer
     */
    @ColumnInfo
    private String ExerciseWeekTimes;
    
    /**
     *  日吸烟量Integer
     */
    @ColumnInfo
    private String Smoking;
    
    /**
     *  日饮酒量float
     */
    @ColumnInfo
    private String DailyAlcoholIntake;

    /**
     *  机构及级别
     */
    @ColumnInfo
    private String TargetOrgName;

    /**
     *  原因
     */
    @ColumnInfo
    private String TranoutReasons;

    /**
     *  病人名称
     */
    @ColumnInfo
    private String personName;

    /**
     *  其他
     */
    @ColumnInfo
    private String Other;

    /**
     *  常用药品
     */
    @ColumnInfo
    private String Drug;

    /**
     *  实验室检查
     */
    @ColumnInfo
    private String Labora;

    /**
     * 随访是否完成  0 未完成  1 已完成
     */
    @ColumnInfo
    private Integer isFinish = 0;
    
    /**
     * 定位地址
     */
    @ColumnInfo
    private String address;

    /**
     * 拍照图片路径1
     */
    @ColumnInfo
    private String picturePath1;

    /**
     * 拍照图片路径2
     */
    @ColumnInfo
    private String picturePath2;

    /**
     * 拍照图片路径3
     */
    @ColumnInfo
    private String picturePath3;

}
